1. Field of the Invention
The present invention relates generally to an improved data processing system and in particular to a method and apparatus for substituting one set of computer instructions for a second set of computer instructions. More particularly, the present invention relates to a computer implemented method, apparatus, and a computer usable program product for substituting one set of computer instructions for a second set of computer instructions at load time.
2. Description of the Related Art
In modern data processing, a problem can arise when new software programs are written for new types of hardware. New software can include instructions that are designed for new facilities available on the new hardware. A new facility is any function, capability, or component of the piece of hardware that is new, relative to other forms of hardware currently in use. If a user attempts to implement the new software on a data processing system containing an older hardware component, then problems can arise. Generally speaking, when a new hardware instruction is introduced, applications that are statically compiled cannot currently exploit the new instruction unless they have the prerequisite level of hardware that defines the instruction. For vendors that provide operating systems, middleware, or any other application that has to sell to a broad range of users, years of time may pass before the hardware becomes common enough that the hardware can be specified by the software vendor as “required hardware” without reducing the potential market for the software.